package com.linkgie.galaxyframework.utils;

/**
 * 数据页；
 * <p>
 * 表示了一个分页集合中的某一页；
 */
public interface Pagination extends PageNo {

    public static final long UNKNOWN_SIZE = -1;

    public static final long MIN_PAGE_SIZE = 1;

    /**
     * 当前页所属的分页集合的记录总数；
     * 
     * <p>
     * 此属性可能返回 {@value #UNKNOWN_SIZE} ；
     * <br>
     * 例如：
     * 1. 数据未分页，因此不包含分页相关信息；
     * <br>
     * 2. 在某些场景下，对分页数据的访问是流式读取的，此时分页数据中不会包含总记录数；
     * 
     * @return
     */
    long getTotalSize();

}
